d=document;
// город
dir0f = 0;
// категория
dir1f = 0;
// тип товара
dir3f = 0;
// какую группу тегов показывать
alltags = 0;
// хеш с облаком тегов
tags = {};

// 0
function tagsReqChange() {
	var st;
	try {
		window.status = stat(req[0].readyState);
		if (req[0].readyState == 4) {
			st = req[0].status;
			if(st == 200) {
				tags = {};
				d.getElementById('tagscloud').innerHTML = req[0].responseText;
			} else {
				alert("Не удалось получить данные:\n" + req[0].statusText);
			}
		}
	}
	catch( e ) {
		alert('tagsReqChange() Caught Exception: ' + e.description);
	}
}
//1
function goodsReqChange() {
	var st;
	try {
		window.status = stat(req[1].readyState);
		if (req[1].readyState == 4) {
			st = req[1].status;
			if(st == 200) {
				var ar = new Array;
				var xx = '';
				ar = req[1].responseText.split("<!-- -->");
				dir3f = ar[0];
				for (i=1; i < ar.length; i++) {
					xx += ar[i];
				}
				d.getElementById('goodstypes').innerHTML = xx;
				GetTagsCloud();
			} else {
				alert("Не удалось получить данные:\n" + req[1].statusText);
			}
		}
	}
	catch( e ) {
		alert('goodsReqChange() Caught Exception: ' + e.description);
	}
}
// 2
function pricesReqChange() {
	var st;
	try {
		window.status = stat(req[2].readyState);
		if (req[2].readyState == 4) {
			st = req[2].status;
			if(st == 200) {
				var element = d.forms['fhead'].elements;
				for (i=0; i < element.length; i++) {
					if (element[i].type == 'checkbox' && d.getElementById('cart0div'+element[i].value) ){
						d.getElementById('cart0div'+element[i].value).style.display = 'none';
//						d.getElementById('dir0div'+element[i].value).style.display = 'none';
						element[i].checked = false;
					}
				}
				if( req[2].responseText ){
					d.getElementById('cart0div').style.display = 'none';
					var prices = req[2].responseText.split(',');
					for (i=0; i < prices.length; i++) {
						d.getElementById('cart0div'+prices[i]).style.display = 'block';
						d.getElementById('cart0_'+prices[i]).checked = true;
//						if(dir0f == 0){
//							d.getElementById('dir0div'+prices[i]).style.display = 'inline';
//						}else{
//							d.getElementById('dir0div'+prices[i]).style.display = 'none';
//						}
					}
				}else{
					d.getElementById('cart0div').style.display = 'block';
				}
			} else {
				alert("Не удалось получить данные:\n" + req[2].statusText);
			}
		}
	}
	catch( e ) {
		alert('pricesReqChange() Caught Exception: ' + e.description);
	}
}
// 3
function itemsReqChange() {
	var st;
	try {
		window.status = stat(req[3].readyState);
		if (req[3].readyState == 4) {
			st = req[3].status;
			if(st == 200) {
//				var itemsFrame = d.getElementById('itemsframe');
//				var doc = itemsFrame.contentDocument;
//				if (doc == undefined || doc == null)
//					doc = testFrame.contentWindow.document;
//				doc.open();
//				doc.write( req[3].responseText );
//				doc.close();
WriteToFrame( req[3].responseText );
//				d.getElementById('itemsframe').innerHTML = req[3].responseText;
			} else {
				WriteToFrame("Не удалось получить данные:\n" + req[3].statusText);
			}
		}
	}
	catch( e ) {
		WriteToFrame('itemsReqChange() Caught Exception: ' + e.description);
	}
}
//5
function queriesReqChange() {
	var st;
	try {
		window.status = stat(req[5].readyState);
		if (req[5].readyState == 4) {
			st = req[5].status;
			if(st == 200) {
				d.getElementById('goodstypes').innerHTML = req[5].responseText;
			} else {
				alert("Не удалось получить данные:\n" + req[5].statusText);
			}
		}
	}
	catch( e ) {
		alert('queriesReqChange() Caught Exception: ' + e.description);
	}
}


function WriteToFrame(val){
	var itemsFrame = d.getElementById('itemsframe');
	var doc = itemsFrame.contentDocument;
	if (doc == undefined || doc == null)
		doc = itemsFrame.contentWindow.document;
	doc.open();
	doc.write( val );
	doc.close();
}

function ShowPricesListFromCity(n){
	dir0f = n;
	GetPricesList();
}
// запрос списка прайсов при изменении города
function GetPricesList(){
	if (!d.getElementById) return;
	loadXMLDoc('/cgi-bin/user_ffh_ajax.pl?hash='+Math.random()+'&act=prices&dir1f='+dir1f+'&dir0f='+dir0f,2);
}
// запрос блока типов товара и облака тегов при изменении категории
function ShowGoodsTypesFromCat(n){
	dir1f = n;
//	dir3f = 0;
	GetGoodsTypes();
	GetPricesList();
//	GetTagsCloud();
}
// запрос показа облака тегов при изменении флага группы показываемых тегов
function ShowTagsCloudFromT(n){
	alltags = n;
	GetTagsCloud();
}
// запрос показа облака тегов при изменении Main Tag
function ShowTagsCloudFromMD(n){
	dir3f = n;
	GetTagsCloud();
}
// AJAX запрос облака тегов
function GetTagsCloud(){
	if (!d.getElementById) return;
	loadXMLDoc('/cgi-bin/user_ffh_ajax.pl?hash='+Math.random()+'&act=tagscloud&dir1f='+dir1f+'&dir3f='+dir3f+'&alltags='+alltags,'0');
}
// AJAX запрос типа товаров
function GetGoodsTypes(){
	if (!d.getElementById) return;
	loadXMLDoc('/cgi-bin/user_ffh_ajax.pl?hash='+Math.random()+'&act=tog&dir1f='+dir1f+'&dir3f='+dir3f,1);
}
// AJAX запрос типа товаров для запросов
function ShowGoodsTypesInQueries(n){
	if (!d.getElementById) return;
	loadXMLDoc('/cgi-bin/user_ffh_ajax.pl?hash='+Math.random()+'&act=qtog&cat='+n,5);
}

// задаем тег, выделяем жирным, отмечаем в хеше тегов и наоборот
function SetTag(n){
	if( tags[n] == 1){
		document.getElementById('tag'+n).style.fontWeight='normal';
		tags[n] = 0;
	} else {
		document.getElementById('tag'+n).style.fontWeight='bold';
		tags[n] = 1;
	}
}

// показать/спрятать элемент с указанным id
function showElement(id,show) {
	var div = document.getElementById(id);
	div.style.display = show? 'block' : 'none';
}

//
function ShowItems(){

	if (!d.getElementById) return;

	var txt = '';
	var query = '/cgi-bin/user_items_ajax.pl?hash='+Math.random()+'&act=show';

	// город
	query += '&dir0='+dir0f;
	// категория
	query += '&dir1='+dir1f;
	// тип товара (main descriptor)
	query += '&dir3='+dir3f;
	// валюта
	query += '&dir2='+d.forms['fhead'].dir2f.options[d.forms['fhead'].dir2f.selectedIndex].value;
	// доступность
	// недоступен
	if(d.getElementById('dost0').checked){
		query += '&dost0=1';
	}
	// доступен
	if(d.getElementById('dost1').checked){
		query += '&dost1=1';
	}
	// условно доступен
	if(d.getElementById('dost2').checked){
		query += '&dost2=1';
	}
	// теги
	for ( i in tags) {
		if( tags[i] > 0 ){
			txt += ','+i;
		}
	}
	var re = /^,/;
	query += txt.replace(re,'&dir5=');
	// прайс-листы
	txt = '';
	var element = d.forms['fhead'].elements;
	for (i=0; i < element.length; i++) {
		if (element[i].type == 'checkbox' && d.getElementById('cart0div'+element[i].value)){
			if(element[i].checked == true) {
				txt += ','+element[i].value;
			}
		}
	}
	query += txt.replace(re,'&cart0=');

WriteToFrame( "Запрос к базе данных, ожидайте..." );
//	d.getElementById('items').innerHTML = "Запрос к базе данных, ожидайте...";

	loadXMLDoc(query,3);
}
